﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 采购订单行AITDTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class POLineAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public POLineAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
					DocLineNo= 0; 
							TotalTaxTC=0m; 
					TotalMnyTC=0m; 
		
		
					NetMnyTC=0m; 
		
					FinallyPriceTC=0m; 
					PurQtyTU=0m; 
					PurQtyTBU=0m; 
		
		
		
					SrcDocType= 0; 
				
		
		
					IsPresent=false; 
		
		
		
		
					IsForceWholeSet=false; 

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.POAITDTO != null) 
			{
				this.POAITDTO.DoSerializeKeyList(dict);
			}
	        	        	        	        			if (this.RcvBy != null) 
			{
				this.RcvBy.DoSerializeKeyList(dict);
			}
	        			if (this.PaymentTerm != null) 
			{
				this.PaymentTerm.DoSerializeKeyList(dict);
			}
	        	        			if (this.ItemInfo != null) 
			{
				this.ItemInfo.DoSerializeKeyList(dict);
			}
	        	        	        	        	        			if (this.DescFlexSegments != null) 
			{
				this.DescFlexSegments.DoSerializeKeyList(dict);
			}
	        			if (this.Project != null) 
			{
				this.Project.DoSerializeKeyList(dict);
			}
	        	        			if (this.SrcDocInfo != null) 
			{
				this.SrcDocInfo.DoSerializeKeyList(dict);
			}
	        			if (this.SCMPickList!=null)
			{
				foreach(ufida.u9.ait.openapi.SCMPickListAITDTOData objdata in this.SCMPickList)
				{
					objdata.DoSerializeKeyList(dict);
				}
			}
				        			if (this.TaxSchedule != null) 
			{
				this.TaxSchedule.DoSerializeKeyList(dict);
			}
	        	        			if (this.TradeUOM != null) 
			{
				this.TradeUOM.DoSerializeKeyList(dict);
			}
	        			if (this.StoreUOM != null) 
			{
				this.StoreUOM.DoSerializeKeyList(dict);
			}
	        			if (this.PriceUOM != null) 
			{
				this.PriceUOM.DoSerializeKeyList(dict);
			}
	        			if (this.CostUOM != null) 
			{
				this.CostUOM.DoSerializeKeyList(dict);
			}
	        
		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public POLineAITDTOData(  ufida.u9.ait.openapi.POAITDTOData pOAITDTO  , System.Int32 docLineNo  , System.Decimal totalTaxTC  , System.Decimal totalMnyTC  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData rcvBy  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData paymentTerm  , System.Decimal netMnyTC  , ufida.u9.ait.openapi.CopyOfItemInfoData itemInfo  , System.Decimal finallyPriceTC  , System.Decimal purQtyTU  , System.Decimal purQtyTBU  , System.String memo  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexSegments  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData project  , System.Int16 srcDocType  , ufida.u9.ait.openapi.CopyOfSrcDocInfoData srcDocInfo  , List<ufida.u9.ait.openapi.SCMPickListAITDTOData> sCMPickList  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData taxSchedule  , System.Boolean isPresent  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData tradeUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData storeUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData priceUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData costUOM  , System.Boolean isForceWholeSet  )
		{
			initData();
			this.POAITDTO = pOAITDTO;
			this.DocLineNo = docLineNo;
			this.TotalTaxTC = totalTaxTC;
			this.TotalMnyTC = totalMnyTC;
			this.RcvBy = rcvBy;
			this.PaymentTerm = paymentTerm;
			this.NetMnyTC = netMnyTC;
			this.ItemInfo = itemInfo;
			this.FinallyPriceTC = finallyPriceTC;
			this.PurQtyTU = purQtyTU;
			this.PurQtyTBU = purQtyTBU;
			this.Memo = memo;
			this.DescFlexSegments = descFlexSegments;
			this.Project = project;
			this.SrcDocType = srcDocType;
			this.SrcDocInfo = srcDocInfo;
			this.SCMPickList = sCMPickList;
			this.TaxSchedule = taxSchedule;
			this.IsPresent = isPresent;
			this.TradeUOM = tradeUOM;
			this.StoreUOM = storeUOM;
			this.PriceUOM = priceUOM;
			this.CostUOM = costUOM;
			this.IsForceWholeSet = isForceWholeSet;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 采购订单AITDTO
		/// 采购订单行AITDTO.Misc.采购订单AITDTO
		/// </summary>
		private ufida.u9.ait.openapi.POAITDTOData m_pOAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.POAITDTOData POAITDTO
		{
			get	
			{	
				return m_pOAITDTO ;
			}
			set	
			{	
				m_pOAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 采购订单行AITDTO.Misc.行号
		/// </summary>
		private System.Int32 m_docLineNo ;
		[DataMember(IsRequired=false)]
		public System.Int32 DocLineNo
		{
			get	
			{	
				return m_docLineNo ;
			}
			set	
			{	
				m_docLineNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 税额(原币)
		/// 采购订单行AITDTO.Misc.税额(原币)
		/// </summary>
		private System.Decimal m_totalTaxTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalTaxTC
		{
			get	
			{	
				return m_totalTaxTC ;
			}
			set	
			{	
				m_totalTaxTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 价税合计(原币)
		/// 采购订单行AITDTO.Misc.价税合计(原币)
		/// </summary>
		private System.Decimal m_totalMnyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal TotalMnyTC
		{
			get	
			{	
				return m_totalMnyTC ;
			}
			set	
			{	
				m_totalMnyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 收货原则
		/// 采购订单行AITDTO.Misc.收货原则
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_rcvBy ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData RcvBy
		{
			get	
			{	
				return m_rcvBy ;
			}
			set	
			{	
				m_rcvBy = value ;	
			}
		}
			
		

		/// <summary>
		/// 付款条件
		/// 采购订单行AITDTO.Misc.付款条件
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_paymentTerm ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData PaymentTerm
		{
			get	
			{	
				return m_paymentTerm ;
			}
			set	
			{	
				m_paymentTerm = value ;	
			}
		}
			
		

		/// <summary>
		/// 未税金额(原币)
		/// 采购订单行AITDTO.Misc.未税金额(原币)
		/// </summary>
		private System.Decimal m_netMnyTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal NetMnyTC
		{
			get	
			{	
				return m_netMnyTC ;
			}
			set	
			{	
				m_netMnyTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品
		/// 采购订单行AITDTO.Misc.料品
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfItemInfoData m_itemInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfItemInfoData ItemInfo
		{
			get	
			{	
				return m_itemInfo ;
			}
			set	
			{	
				m_itemInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 最终价(原币)
		/// 采购订单行AITDTO.Misc.最终价(原币)
		/// </summary>
		private System.Decimal m_finallyPriceTC ;
		[DataMember(IsRequired=false)]
		public System.Decimal FinallyPriceTC
		{
			get	
			{	
				return m_finallyPriceTC ;
			}
			set	
			{	
				m_finallyPriceTC = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购数量1
		/// 采购订单行AITDTO.Misc.采购数量1
		/// </summary>
		private System.Decimal m_purQtyTU ;
		[DataMember(IsRequired=false)]
		public System.Decimal PurQtyTU
		{
			get	
			{	
				return m_purQtyTU ;
			}
			set	
			{	
				m_purQtyTU = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购数量2
		/// 采购订单行AITDTO.Misc.采购数量2
		/// </summary>
		private System.Decimal m_purQtyTBU ;
		[DataMember(IsRequired=false)]
		public System.Decimal PurQtyTBU
		{
			get	
			{	
				return m_purQtyTBU ;
			}
			set	
			{	
				m_purQtyTBU = value ;	
			}
		}
			
		

		/// <summary>
		/// 备注
		/// 采购订单行AITDTO.Misc.备注
		/// </summary>
		private System.String m_memo ;
		[DataMember(IsRequired=false)]
		public System.String Memo
		{
			get	
			{	
				return m_memo ;
			}
			set	
			{	
				m_memo = value ;	
			}
		}
			
		

		/// <summary>
		/// 描述性弹性域
		/// 采购订单行AITDTO.Misc.描述性弹性域
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexSegments ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexSegments
		{
			get	
			{	
				return m_descFlexSegments ;
			}
			set	
			{	
				m_descFlexSegments = value ;	
			}
		}
			
		

		/// <summary>
		/// 项目
		/// 采购订单行AITDTO.Misc.项目
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_project ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Project
		{
			get	
			{	
				return m_project ;
			}
			set	
			{	
				m_project = value ;	
			}
		}
			
		

		/// <summary>
		/// 来源单据类型
		/// 采购订单行AITDTO.Misc.来源单据类型
		/// </summary>
		private System.Int16 m_srcDocType ;
		[DataMember(IsRequired=false)]
		public System.Int16 SrcDocType
		{
			get	
			{	
				return m_srcDocType ;
			}
			set	
			{	
				m_srcDocType = value ;	
			}
		}
			
		

		/// <summary>
		/// 来源单据信息
		/// 采购订单行AITDTO.Misc.来源单据信息
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfSrcDocInfoData m_srcDocInfo ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfSrcDocInfoData SrcDocInfo
		{
			get	
			{	
				return m_srcDocInfo ;
			}
			set	
			{	
				m_srcDocInfo = value ;	
			}
		}
			
		

		/// <summary>
		/// 供应链备料
		/// 采购订单行AITDTO.Misc.供应链备料
		/// </summary>
		private List<ufida.u9.ait.openapi.SCMPickListAITDTOData> m_sCMPickList ;
		[DataMember(IsRequired=false)]
		public List<ufida.u9.ait.openapi.SCMPickListAITDTOData> SCMPickList
		{
			get	
			{	
				if (m_sCMPickList == null )
				{
					List<ufida.u9.ait.openapi.SCMPickListAITDTOData> n_m_list = new List<ufida.u9.ait.openapi.SCMPickListAITDTOData>() ;
					m_sCMPickList = n_m_list ;
				}
				return m_sCMPickList ;
			}
			set	
			{	
				m_sCMPickList = value ;	
			}
		}
			
		

		/// <summary>
		/// 税组合
		/// 采购订单行AITDTO.Misc.税组合
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_taxSchedule ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TaxSchedule
		{
			get	
			{	
				return m_taxSchedule ;
			}
			set	
			{	
				m_taxSchedule = value ;	
			}
		}
			
		

		/// <summary>
		/// 赠品
		/// 采购订单行AITDTO.Misc.赠品
		/// </summary>
		private System.Boolean m_isPresent ;
		[DataMember(IsRequired=false)]
		public System.Boolean IsPresent
		{
			get	
			{	
				return m_isPresent ;
			}
			set	
			{	
				m_isPresent = value ;	
			}
		}
			
		

		/// <summary>
		/// 采购单位
		/// 采购订单行AITDTO.Misc.采购单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_tradeUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData TradeUOM
		{
			get	
			{	
				return m_tradeUOM ;
			}
			set	
			{	
				m_tradeUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 库存单位
		/// 采购订单行AITDTO.Misc.库存单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_storeUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData StoreUOM
		{
			get	
			{	
				return m_storeUOM ;
			}
			set	
			{	
				m_storeUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 计价单位
		/// 采购订单行AITDTO.Misc.计价单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_priceUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData PriceUOM
		{
			get	
			{	
				return m_priceUOM ;
			}
			set	
			{	
				m_priceUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 成本单位
		/// 采购订单行AITDTO.Misc.成本单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_costUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData CostUOM
		{
			get	
			{	
				return m_costUOM ;
			}
			set	
			{	
				m_costUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 强制齐套
		/// 采购订单行AITDTO.Misc.强制齐套
		/// </summary>
		private System.Boolean m_isForceWholeSet ;
		[DataMember(IsRequired=false)]
		public System.Boolean IsForceWholeSet
		{
			get	
			{	
				return m_isForceWholeSet ;
			}
			set	
			{	
				m_isForceWholeSet = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																																
		#endregion 
	} 	
}
